﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Agent.Messaging
{
  /// <summary>
  /// Used as a return value of the <see cref="MessageReceiver.WaitLoopCore"/> method
  /// </summary>
  internal enum WaitLoopCoreResult
  {
    /// <summary>
    /// The sender is alive, but no messages are waiting
    /// </summary>
    SenderAlive,

    /// <summary>
    /// Messages are waiting. The sender might be alive (or they could be old messages)
    /// </summary>
    MessagesWaiting,

    /// <summary>
    /// The sender has disconnected
    /// </summary>
    SenderDisconnected,

    /// <summary>
    /// The receiver has been asked to <see cref="Stop"/>
    /// </summary>
    StopReceived
  }
}
